import {getJwt} from "@/api/jwt.js";
import axios from "axios";

/**
 * 创建一个axios实例用于API请求
 * 配置基础URL和超时时间
 */
let api=axios.create({
    baseURL: "/api",
    timeout:3000
});


/**
 * 添加响应拦截器
 * 统一处理响应数据格式和错误信息
 */
api.interceptors.response.use(resp=>{
    // 成功响应时直接返回数据部分
    return resp.data;
},resp=>{
    // 失败响应时返回拒绝的Promise，包含错误信息
    if (!resp || !resp.data) {
        throw new Error('Invalid response structure');
    }
    return resp.data;
})

/** 配置请求拦截器
 * **/
api.interceptors.request.use(config=>{

    config.headers["Authorization"]=getJwt();
    return config;
},error=>{
    return Promise.reject(error);
})

export default api;